{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在这一节中，我们将学习使用Matlibplot制作图形，包括趋势图、散点图、柱状图、直方图，以及Subplots(不知如何形容，可以理解为将多个图形放置在一起)。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "首先，我们导入numpy和matplotlib:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 0.        ,  0.1010101 ,  0.2020202 ,  0.3030303 ,  0.4040404 ,\n",
       "        0.50505051,  0.60606061,  0.70707071,  0.80808081,  0.90909091,\n",
       "        1.01010101,  1.11111111,  1.21212121,  1.31313131,  1.41414141,\n",
       "        1.51515152,  1.61616162,  1.71717172,  1.81818182,  1.91919192,\n",
       "        2.02020202,  2.12121212,  2.22222222,  2.32323232,  2.42424242,\n",
       "        2.52525253,  2.62626263,  2.72727273,  2.82828283,  2.92929293,\n",
       "        3.03030303,  3.13131313,  3.23232323,  3.33333333,  3.43434343,\n",
       "        3.53535354,  3.63636364,  3.73737374,  3.83838384,  3.93939394,\n",
       "        4.04040404,  4.14141414,  4.24242424,  4.34343434,  4.44444444,\n",
       "        4.54545455,  4.64646465,  4.74747475,  4.84848485,  4.94949495,\n",
       "        5.05050505,  5.15151515,  5.25252525,  5.35353535,  5.45454545,\n",
       "        5.55555556,  5.65656566,  5.75757576,  5.85858586,  5.95959596,\n",
       "        6.06060606,  6.16161616,  6.26262626,  6.36363636,  6.46464646,\n",
       "        6.56565657,  6.66666667,  6.76767677,  6.86868687,  6.96969697,\n",
       "        7.07070707,  7.17171717,  7.27272727,  7.37373737,  7.47474747,\n",
       "        7.57575758,  7.67676768,  7.77777778,  7.87878788,  7.97979798,\n",
       "        8.08080808,  8.18181818,  8.28282828,  8.38383838,  8.48484848,\n",
       "        8.58585859,  8.68686869,  8.78787879,  8.88888889,  8.98989899,\n",
       "        9.09090909,  9.19191919,  9.29292929,  9.39393939,  9.49494949,\n",
       "        9.5959596 ,  9.6969697 ,  9.7979798 ,  9.8989899 , 10.        ])"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "x = np.linspace(0, 10, 100)\n",
    "x"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXwAAAD8CAYAAAB0IB+mAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAANQklEQVR4nO3cX4il9X3H8fenuxEak0aJk5DurmRb1pi90KITI6VpTUObXXuxBLxQQ6QSWKQx5FIpNLnwprkohKBmWWSR3GQvGkk2ZRMplMSCNd1Z8N8qynSlOl3BNYYUDFRWv704p51hnHWenXNmZp3v+wUD85znNzPf+TH73mfPznlSVUiStr7f2ewBJEkbw+BLUhMGX5KaMPiS1ITBl6QmDL4kNbFq8JMcSfJakmfPcz5JvptkPsnTSa6b/piSpEkNucJ/GNj3Huf3A3vGbweB700+liRp2lYNflU9BrzxHksOAN+vkSeAy5J8YloDSpKmY/sUPscO4JUlxwvjx15dvjDJQUb/CuDSSy+9/uqrr57Cl5ekPk6ePPl6Vc2s5WOnEfys8NiK92uoqsPAYYDZ2dmam5ubwpeXpD6S/OdaP3Yav6WzAOxacrwTODOFzytJmqJpBP8YcMf4t3VuBH5TVe96OkeStLlWfUonyQ+Am4ArkiwA3wI+AFBVh4DjwM3APPBb4M71GlaStHarBr+qblvlfAFfm9pEkqR14SttJakJgy9JTRh8SWrC4EtSEwZfkpow+JLUhMGXpCYMviQ1YfAlqQmDL0lNGHxJasLgS1ITBl+SmjD4ktSEwZekJgy+JDVh8CWpCYMvSU0YfElqwuBLUhMGX5KaMPiS1ITBl6QmDL4kNWHwJakJgy9JTRh8SWrC4EtSEwZfkpow+JLUhMGXpCYMviQ1YfAlqQmDL0lNGHxJamJQ8JPsS/JCkvkk965w/iNJfpLkqSSnktw5/VElSZNYNfhJtgEPAPuBvcBtSfYuW/Y14Lmquha4CfiHJJdMeVZJ0gSGXOHfAMxX1emqegs4ChxYtqaADycJ8CHgDeDcVCeVJE1kSPB3AK8sOV4YP7bU/cCngTPAM8A3quqd5Z8oycEkc0nmzp49u8aRJUlrMST4WeGxWnb8ReBJ4PeBPwLuT/J77/qgqsNVNVtVszMzMxc4qiRpEkOCvwDsWnK8k9GV/FJ3Ao/UyDzwEnD1dEaUJE3DkOCfAPYk2T3+j9hbgWPL1rwMfAEgyceBTwGnpzmoJGky21dbUFXnktwNPApsA45U1akkd43PHwLuAx5O8gyjp4DuqarX13FuSdIFWjX4AFV1HDi+7LFDS94/A/zldEeTJE2Tr7SVpCYMviQ1YfAlqQmDL0lNGHxJasLgS1ITBl+SmjD4ktSEwZekJgy+JDVh8CWpCYMvSU0YfElqwuBLUhMGX5KaMPiS1ITBl6QmDL4kNWHwJakJgy9JTRh8SWrC4EtSEwZfkpow+JLUhMGXpCYMviQ1YfAlqQmDL0lNGHxJasLgS1ITBl+SmjD4ktSEwZekJgy+JDUxKPhJ9iV5Icl8knvPs+amJE8mOZXkF9MdU5I0qe2rLUiyDXgA+AtgATiR5FhVPbdkzWXAg8C+qno5ycfWaV5J0hoNucK/AZivqtNV9RZwFDiwbM3twCNV9TJAVb023TElSZMaEvwdwCtLjhfGjy11FXB5kp8nOZnkjpU+UZKDSeaSzJ09e3ZtE0uS1mRI8LPCY7XseDtwPfBXwBeBv0ty1bs+qOpwVc1W1ezMzMwFDytJWrtVn8NndEW/a8nxTuDMCmter6o3gTeTPAZcC7w4lSklSRMbcoV/AtiTZHeSS4BbgWPL1vwY+FyS7Uk+CHwWeH66o0qSJrHqFX5VnUtyN/AosA04UlWnktw1Pn+oqp5P8jPgaeAd4KGqenY9B5ckXZhULX86fmPMzs7W3NzcpnxtSXq/SnKyqmbX8rG+0laSmjD4ktSEwZekJgy+JDVh8CWpCYMvSU0YfElqwuBLUhMGX5KaMPiS1ITBl6QmDL4kNWHwJakJgy9JTRh8SWrC4EtSEwZfkpow+JLUhMGXpCYMviQ1YfAlqQmDL0lNGHxJasLgS1ITBl+SmjD4ktSEwZekJgy+JDVh8CWpCYMvSU0YfElqwuBLUhMGX5KaMPiS1ITBl6QmBgU/yb4kLySZT3Lve6z7TJK3k9wyvRElSdOwavCTbAMeAPYDe4Hbkuw9z7pvA49Oe0hJ0uSGXOHfAMxX1emqegs4ChxYYd3XgR8Cr01xPknSlAwJ/g7glSXHC+PH/l+SHcCXgEPv9YmSHEwyl2Tu7NmzFzqrJGkCQ4KfFR6rZcffAe6pqrff6xNV1eGqmq2q2ZmZmYEjSpKmYfuANQvAriXHO4Ezy9bMAkeTAFwB3JzkXFX9aBpDSpImNyT4J4A9SXYD/wXcCty+dEFV7f6/95M8DPyTsZeki8uqwa+qc0nuZvTbN9uAI1V1Ksld4/Pv+by9JOniMOQKn6o6Dhxf9tiKoa+qv558LEnStPlKW0lqwuBLUhMGX5KaMPiS1ITBl6QmDL4kNWHwJakJgy9JTRh8SWrC4EtSEwZfkpow+JLUhMGXpCYMviQ1YfAlqQmDL0lNGHxJasLgS1ITBl+SmjD4ktSEwZekJgy+JDVh8CWpCYMvSU0YfElqwuBLUhMGX5KaMPiS1ITBl6QmDL4kNWHwJakJgy9JTRh8SWrC4EtSE4OCn2RfkheSzCe5d4XzX07y9Pjt8STXTn9USdIkVg1+km3AA8B+YC9wW5K9y5a9BPxZVV0D3AccnvagkqTJDLnCvwGYr6rTVfUWcBQ4sHRBVT1eVb8eHz4B7JzumJKkSQ0J/g7glSXHC+PHzuerwE9XOpHkYJK5JHNnz54dPqUkaWJDgp8VHqsVFyafZxT8e1Y6X1WHq2q2qmZnZmaGTylJmtj2AWsWgF1LjncCZ5YvSnIN8BCwv6p+NZ3xJEnTMuQK/wSwJ8nuJJcAtwLHli5IciXwCPCVqnpx+mNKkia16hV+VZ1LcjfwKLANOFJVp5LcNT5/CPgm8FHgwSQA56pqdv3GliRdqFSt+HT8upudna25ublN+dqS9H6V5ORaL6h9pa0kNWHwJakJgy9JTRh8SWrC4EtSEwZfkpow+JLUhMGXpCYMviQ1YfAlqQmDL0lNGHxJasLgS1ITBl+SmjD4ktSEwZekJgy+JDVh8CWpCYMvSU0YfElqwuBLUhMGX5KaMPiS1ITBl6QmDL4kNWHwJakJgy9JTRh8SWrC4EtSEwZfkpow+JLUhMGXpCYMviQ1YfAlqQmDL0lNDAp+kn1JXkgyn+TeFc4nyXfH559Oct30R5UkTWLV4CfZBjwA7Af2Arcl2bts2X5gz/jtIPC9Kc8pSZrQkCv8G4D5qjpdVW8BR4EDy9YcAL5fI08AlyX5xJRnlSRNYPuANTuAV5YcLwCfHbBmB/Dq0kVJDjL6FwDA/yR59oKm3bquAF7f7CEuEu7FIvdikXux6FNr/cAhwc8Kj9Ua1lBVh4HDAEnmqmp2wNff8tyLRe7FIvdikXuxKMncWj92yFM6C8CuJcc7gTNrWCNJ2kRDgn8C2JNkd5JLgFuBY8vWHAPuGP+2zo3Ab6rq1eWfSJK0eVZ9SqeqziW5G3gU2AYcqapTSe4anz8EHAduBuaB3wJ3Dvjah9c89dbjXixyLxa5F4vci0Vr3otUveupdknSFuQrbSWpCYMvSU2se/C9LcOiAXvx5fEePJ3k8STXbsacG2G1vViy7jNJ3k5yy0bOt5GG7EWSm5I8meRUkl9s9IwbZcCfkY8k+UmSp8Z7MeT/C993khxJ8tr5Xqu05m5W1bq9MfpP3v8A/gC4BHgK2Ltszc3ATxn9Lv+NwC/Xc6bNehu4F38MXD5+f3/nvViy7l8Y/VLALZs99yb+XFwGPAdcOT7+2GbPvYl78bfAt8fvzwBvAJds9uzrsBd/ClwHPHue82vq5npf4XtbhkWr7kVVPV5Vvx4fPsHo9Qxb0ZCfC4CvAz8EXtvI4TbYkL24HXikql4GqKqtuh9D9qKADycJ8CFGwT+3sWOuv6p6jNH3dj5r6uZ6B/98t1y40DVbwYV+n19l9Df4VrTqXiTZAXwJOLSBc22GIT8XVwGXJ/l5kpNJ7tiw6TbWkL24H/g0oxd2PgN8o6re2ZjxLipr6uaQWytMYmq3ZdgCBn+fST7PKPh/sq4TbZ4he/Ed4J6qent0MbdlDdmL7cD1wBeA3wX+LckTVfXieg+3wYbsxReBJ4E/B/4Q+Ock/1pV/73Os11s1tTN9Q6+t2VYNOj7THIN8BCwv6p+tUGzbbQhezELHB3H/grg5iTnqupHGzLhxhn6Z+T1qnoTeDPJY8C1wFYL/pC9uBP4+xo9kT2f5CXgauDfN2bEi8aaurneT+l4W4ZFq+5FkiuBR4CvbMGrt6VW3Yuq2l1Vn6yqTwL/CPzNFow9DPsz8mPgc0m2J/kgo7vVPr/Bc26EIXvxMqN/6ZDk44zuHHl6Q6e8OKypm+t6hV/rd1uG952Be/FN4KPAg+Mr23O1Be8QOHAvWhiyF1X1fJKfAU8D7wAPVdWWu7X4wJ+L+4CHkzzD6GmNe6pqy902OckPgJuAK5IsAN8CPgCTddNbK0hSE77SVpKaMPiS1ITBl6QmDL4kNWHwJakJgy9JTRh8SWrifwHXe3WluIZOawAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,ax = plt.subplots()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x2a843b60d00>]"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ax.plot(x,x**2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "生成散点图：参数值不变，替换plot使用scatter，我们就能生成散点图。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x2a843c81640>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,ax = plt.subplots()\n",
    "ax.scatter(x,np.exp(x))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "柱状图：柱状图也比较简单，product_prices是python中的一个字典，记录了不同水果和价格的关系，分别将product_prices的keys和values传入ax.bar，我们就能生成一个简单的柱状图。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "product_prices = {\n",
    "    \"appple\":23,\n",
    "    \"pair\":50,\n",
    "    \"banana\":20,\n",
    "}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[Text(0.5, 1.0, 'Product Prices'), Text(0, 0.5, 'Product')]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,ax = plt.subplots()\n",
    "ax.bar(product_prices.keys(),product_prices.values())\n",
    "\n",
    "ax.set(\n",
    "    title = \"Product Prices\",\n",
    "    ylabel = \"Product\",\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "水平柱状图：如果我们想把柱状图变为水平的，其它都不用变，只要调用ax.hbar这个方法就可以了。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[Text(0.5, 1.0, 'Product Prices'),\n",
       " Text(0, 0.5, 'Product'),\n",
       " Text(0.5, 0, 'Price')]"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,ax = plt.subplots()\n",
    "ax.barh(list(product_prices.keys()),list(product_prices.values()))\n",
    "\n",
    "ax.set(\n",
    "    title = \"Product Prices\",\n",
    "    ylabel = \"Product\",\n",
    "    xlabel = \"Price\",\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "直方图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([ 10.,  25.,  75., 176., 248., 220., 140.,  82.,  21.,   3.]),\n",
       " array([-2.95807399, -2.35410727, -1.75014054, -1.14617382, -0.5422071 ,\n",
       "         0.06175962,  0.66572634,  1.26969307,  1.87365979,  2.47762651,\n",
       "         3.08159323]),\n",
       " <BarContainer object of 10 artists>)"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = np.random.randn(1000)\n",
    "fig,ax = plt.subplots()\n",
    "plt.hist(x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "综合案例"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([ 1.,  4.,  7., 22., 16., 15., 16., 14.,  3.,  2.]),\n",
       " array([-2.68338726, -2.19626357, -1.70913987, -1.22201617, -0.73489247,\n",
       "        -0.24776878,  0.23935492,  0.72647862,  1.21360232,  1.70072602,\n",
       "         2.18784971]),\n",
       " <BarContainer object of 10 artists>)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 720x360 with 4 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,((ax1,ax2),(ax3,ax4)) = plt.subplots(nrows=2,\n",
    "                                         ncols=2,\n",
    "                                         figsize=(10,5)\n",
    "                                         )\n",
    "\n",
    "ax1.plot(x,x/2)\n",
    "ax2.scatter(np.random.random(10),np.random.random(10))\n",
    "ax3.bar(product_prices.keys(),product_prices.values())\n",
    "ax3.set(title=\"Product Prices\",ylabel=\"Prices\")\n",
    "ax4.hist(np.random.randn(100))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "interpreter": {
   "hash": "f0eadef1d77f15b2dc417c8cc1a73e43ff71cc62600b9af0dbbd14bf3385942a"
  },
  "kernelspec": {
   "display_name": "Python 3.9.12",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
